#if !defined(POSE_UTIL_H_)
#define POSE_UTIL_H_
#include <Eigen/Eigen>
#include <cstdint>

#include "common/basic_type.h"

namespace autodrive {
namespace perception {
/// @brief
/// @param timestamp
/// @param preRTKData
/// @param currentRTKData
/// @param poseMat
Eigen::Affine3d pose_interpolate(std::int64_t const& timestamp,
                                 MatrixData& pre_rtk_data,
                                 MatrixData& current_rtk_data) noexcept(false);

/// @brief
/// @param timestamp
/// @param rtkDataBufferPtr
/// @param poseMat
Eigen::Affine3d gen_pose(
    std::int64_t const& timestamp,
    RTKDataBufferPtr const& rtkDataBufferPtr) noexcept(false);

}  // namespace perception
}  // namespace autodrive

#endif  // POSE_UTIL_H_
